// 引入request异步请求
import request from '../../utils/request.js'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 保存商品详情数据
    detail: {},
    // 保存图片放大浏览
    imgPreview: [],
    // 商品信息与商品参数切换
    current: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // console.log(options)
    const goodsId = options.id;
    request({
      url: '/goods/detail',
      data: {
        goods_id: goodsId
      }
    }).then(res => {
      // console.log(res)
      this.setData({
        detail: res.data.message
      })
      console.log(this.data.detail)
      //  拿到轮播图路径数组
      const preview = res.data.message.pics.map(v => {
        return v.pics_big
      })
      // 保存轮播图浏览数据
      this.setData({
        imgPreview: preview
      })
      // console.log(this.data.imgPreview)
    })
  },
  // 点击轮播图的函数处理
  handlePreview(e) {
    // 点击实现图片放大浏览
    wx.previewImage({
      current: this.data.imgPreview[e.target.dataset.index],
      urls: this.data.imgPreview // 需要预览的图片http链接列表
    })
  },
  // 点击切换展示商品类型的函数
  handleGoodStyle(e) {
    this.setData({
      current: e.target.dataset.index
    })
  },
  //  点击购物车跳转到购物车页面
  handleGoCart() {
    // 跳转到购物车页面
    wx.switchTab({
      url: '../cart/index'
    })
  },
  // 点击加入购物车的处理
  handleAddCart() {
    const goodsCart = wx.getStorageSync('goods') || []

    let exit = goodsCart.some(v => {
      const isExit = v.cart_Id === this.data.detail.goods_id
      if (isExit) {
        //  如果有相同num加一
        v.cart_number += 1;
        wx.showToast({
          title: '数量+1',
          icon: 'success'
        })
      }
      return isExit
    })
    // 如果没有相同就添加到数组
    if(!exit){
      goodsCart.unshift({
        cart_select : true,
        cart_Id : this.data.detail.goods_id,
        cart_img: this.data.detail.goods_small_logo,
        cart_title: this.data.detail.goods_name,
        cart_price: this.data.detail.goods_price,
        cart_number : 1
      })
      // 加入成功的提醒
      wx.showToast({
        title: '成功加入购物车',
        icon: 'success'
      })
    }
    // 将保存到购物车的数据保存到本地
    wx.setStorageSync('goods', goodsCart)

  }

})